package com.example.service;

import java.util.Map;

/**
 * Created by douyx on 2017/11/13.
 */
public interface StatisticsService {

	/**
	 * 辖区内电梯各项统计
	 * 
	 * @return
	 */
	public Map<String, Object> countEleNum(Map map);

	/**
	 * 辖区内电梯类型分布
	 * 
	 * @return
	 */
	public Map<String, Object> countTypeDistrib();

	/**
	 * 辖区内电梯数量分布
	 * 
	 * @return
	 */
	public Map<String, Object> countNumDistrib(Map map);

	/**
	 * 辖区内电梯年限分布
	 * 
	 * @return
	 */
	public Map<String, Object> countYearDistrib(Map map);

	/**
	 * 辖区内保障力量分布
	 * 
	 * @return
	 */
	public Map<String, Object> countOperDistrib(Map map);

	/**
	 * 辖区内各项安全状况统计
	 * 
	 * @return
	 */
	public Map<String, Object> countSafeNum();

	/**
	 * 电梯安全保障工作落实情况
	 * 
	 * @return
	 */
	public Map<String, Object> countMaintRepairNum(Map map);

	/**
	 * 电梯事故隐患排除情况
	 * 
	 * @return
	 */
	public Map<String, Object> countRepairNum(String id);

	/**
	 * 电梯安全保障工作超期情况
	 * 
	 * @return
	 */
	public Map<String, Object> countMaintNum(Map map);

	/**
	 * 获取年度统计数据
	 * 
	 * @return
	 */
	public Map<String, Object> countQuartz(Map<String, Object> param);

	/**
	 * 记录检验超期电梯信息
	 * 
	 * @return
	 */
	public Map<String, Object> recordOvertimeEle(Map<String, Object> param);

	/**
	 * 辖区内电梯的总数量(物业)
	 * 
	 * @return
	 */
	public Map<String, Object> countElevatorNum(String id);

	/**
	 * 辖区内电梯的总数量(维保)
	 * 
	 * @return
	 */
	public Map<String, Object> countEleMaintNum(String id);

	/**
	 * 不同类型电梯数量占比
	 * 
	 * @return
	 */
	public Map<String, Object> countEleTypeNum(String id);

	/**
	 * 使用年限达10年以上电梯数量
	 * 
	 * @return
	 */
	public Map<String, Object> countEleLifeNumOlder(String id);

	/**
	 * 使用年限达10年以下电梯数量
	 * 
	 * @return
	 */
	public Map<String, Object> countEleLifeNumYounger(String id);

	/**
	 * 本帐户辖区维保单位数量
	 * 
	 * @return
	 */
	public Map<String, Object> countMaintCompany(String id);

	/**
	 * 本帐户辖区使用单位数量
	 * 
	 * @return
	 */
	public Map<String, Object> countUseCompany(String id);

	/**
	 * 各单位 资质 数量 及 占比
	 * 
	 * @return
	 */
	public Map<String, Object> countCompanyQuali(String id);

	/**
	 * 各星级 维保单位总数及占比
	 * 
	 * @return
	 */
	public Map<String, Object> countStarCompany(String id);

	/**
	 * 本帐户辖区安全责任主体单位各类型技术人员持证数量
	 * 
	 * @return
	 */
	public Map<String, Object> countTechmanCompany(String id);

	/**
	 * 乘客投诉处理的反馈 率
	 * 
	 * @return
	 */
	public Map<String, Object> countFeedbackRio(String id);

	/**
	 * 本帐户辖区整体维保准时率、各类型周期性维保的平均时长
	 * 
	 * @return
	 */
	public Map<String, Object> countMaint(String id);

	/**
	 * (按月)本帐户辖区周期内整体召修/维修落实率
	 * 
	 * @return
	 */
	public Map<String, Object> countRepair(String id, String reportDate);

	/**
	 * 本帐户辖区周期内现场应急救援累计数
	 * 
	 * @return
	 */
	public Map<String, Object> countRescue(String id);

	/**
	 * 使用单位（物业）应急救援演练总次数
	 * 
	 * @return
	 */
	public Map<String, Object> countRescueDrill(String id);

	/**
	 * 检验机构数量
	 * 
	 * @return
	 */
	public Map<String, Object> countCheckOrgNum(String id);

	/**
	 * 人员数量
	 * 
	 * @return
	 */
	public Map<String, Object> countUserNum(String id);

	/**
	 * 使用单位（物业）过期电梯数
	 * 
	 * @return
	 */
	public Map<String, Object> countOvertimeElevator(String id);

	/**
	 * 年度乘客投诉处理的反馈 率
	 * 
	 * @return
	 */
	public Map<String, Object> countFeedbackYear(String id);

	/**
	 * 查询待通知的物业人员列表
	 * 
	 * @return
	 */
	public Map<String, Object> findNotice();

	/**
	 * 本区域 使用单位各资质数量，汇总统计
	 * 
	 * @return
	 */
	public Map<String, Object> countUsedZz(String id);

	/**
	 * 本区域 维保单位各资质数量，汇总统计
	 * 
	 * @return
	 */
	public Map<String, Object> countMaintZz(String id);

	/**
	 * 辖区内 各类 应急救援发生的次数
	 * 
	 * @return
	 */
	public Map<String, Object> countRescueNum(String id);

	/**
	 * 查询电梯 总记录
	 * 
	 * @return
	 */
	public Map<String, Object> findCountCount(String id);

	/**
	 * 查询 维保 电梯 总记录
	 * 
	 * @return
	 */
	public Map<String, Object> findMaintCount(String id);

	/**
	 * 查询 维保 今日维保记录
	 * 
	 * @return
	 */
	public Map<String, Object> findTodayMaint(String id);

	public String decideInfo(String id);



}
